<div class="refentry" lang="en" xml:lang="en"><a id="glXImportContextEXT"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>glXImportContextEXT — import another process's indirect rendering context.</p></div><div class="refsynopsisdiv"><h2>C Specification</h2><div class="funcsynopsis"><table><tr><td><code class="funcdef">GLXContext <b class="fsfunc">glXImportContextEXT</b>(</code></td><td>Display *  </td><td><var class="pdparam">dpy</var>, </td></tr><tr><td> </td><td>GLXContextID  </td><td><var class="pdparam">contextID</var><code>)</code>;</td></tr></table></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="parameters"></a><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>dpy</code></em></span></dt><dd><p>
                    Specifies the connection to the X server.
                </p></dd><dt><span class="term"><em class="parameter"><code>contextID</code></em></span></dt><dd><p>
                    Specifies a GLX rendering context.
                </p></dd></dl></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="description"></a><h2>Description</h2><p>
            <code class="function">glXImportContextEXT</code> creates a GLXContext given the XID of an existing GLXContext.
            It may be used in place of <a class="citerefentry" href="glXCreateContext"><span class="citerefentry"><span class="refentrytitle">glXCreateContext</span></span></a>,
            to share another process's indirect rendering context.
        </p><p>
            Only the server-side context information can be shared between
            X clients; client-side state, such as pixel storage modes,
            cannot be shared. Thus, <code class="function">glXImportContextEXT</code> must allocate memory to store
            client-side information. This memory is freed by calling
            <a class="citerefentry" href="glXFreeContextEXT"><span class="citerefentry"><span class="refentrytitle">glXFreeContextEXT</span></span></a>.
        </p><p>
            This call does not create a new XID.  It merely makes an
            existing object available to the importing client (Display *).
            Like any XID, it goes away when the creating client drops its
            connection or the ID is explicitly deleted. Note that this is
            when the XID goes away. The object goes away when the XID
            goes away AND the context is not current to any thread.
        </p><p>
            If <em class="parameter"><code>contextID</code></em> refers to a
            direct rendering context then no error is generated but
            <code class="function">glXImportContextEXT</code> returns NULL.
        </p><p>
            <code class="function">glXImportContextEXT</code> is part of the <code class="code">EXT_import_context</code> extension,
            not part of the core GLX command set. If _glxextstring(EXT_import_context)
            is included in the string returned by <a class="citerefentry" href="glXQueryExtensionsString"><span class="citerefentry"><span class="refentrytitle">glXQueryExtensionsString</span></span></a>,
            when called with argument <code class="constant">GLX_EXTENSIONS</code>,
            extension <code class="code">EXT_import_context</code> is supported.
        </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="errors"></a><h2>Errors</h2><p>
            <code class="constant">GLXBadContext</code> is generated if <em class="parameter"><code>contextID</code></em> does not
            refer to a valid context.
        </p></div>
        {$pipelinestall}{$examples}
        <div class="refsect1" lang="en" xml:lang="en"><a id="seealso"></a><h2>See Also</h2><p>
            <a class="citerefentry" href="glXCreateContext"><span class="citerefentry"><span class="refentrytitle">glXCreateContext</span></span></a>,
            <a class="citerefentry" href="glXQueryVersion"><span class="citerefentry"><span class="refentrytitle">glXQueryVersion</span></span></a>,
            <a class="citerefentry" href="glXQueryExtensionsString"><span class="citerefentry"><span class="refentrytitle">glXQueryExtensionsString</span></span></a>,
            <a class="citerefentry" href="glXGetContextIDEXT"><span class="citerefentry"><span class="refentrytitle">glXGetContextIDEXT</span></span></a>,
            <a class="citerefentry" href="glXFreeContextEXT"><span class="citerefentry"><span class="refentrytitle">glXFreeContextEXT</span></span></a>
        </p></div><div class="refsect1" lang="en" xml:lang="en"><div id="Copyright"><h2>Copyright</h2><p>
            Copyright © 1991-2006
            Silicon Graphics, Inc. This document is licensed under the SGI
            Free Software B License. For details, see
            <a class="ulink" href="https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/" target="_top">https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/</a>.
        </p></div></div></div>
